package org.wtframework.platform.server.util;

import java.io.File;

import org.openredhead.springx.core.server.service.FilePaths;

/**
 * 
 * <B>版权所有：</B> 佛山市网特计算机软件有限公司 <br/><br/>
 * <B>类描述：</B> （（上传下载专用）获取系统路径） <br/><br/>
 * <B>作者：</B> 黄杰帆 <br/><br/>
 * <B>创建日期：</B> 2015年2月6日 上午9:32:04 
 *
 */
public class FilePath {


	private static String hasRoot = PropertiesUtil.readUrl("sys.path.has.root");
	
	/**
	 * 
	 * <B>方法描述：</B>（获取系统根目录） <br/>
	 *
	 * <B>作者：	 </B> 黄杰帆 <br/>
	 * <B>创建日期：</B> 2015年2月6日 上午9:29:08 
	 * @return
	 */
	public static String getSystemRootPath() {
		
		String systemRootPath = FilePaths.getSystemRootPath();
		systemRootPath = systemRootPath.replace("\\", "/");
		if (!"1".equals(hasRoot)) {
			
			if (systemRootPath.endsWith("/war") || systemRootPath.endsWith("/ROOT")) {
				systemRootPath = systemRootPath.replace("/ROOT", "");
				systemRootPath = systemRootPath.replace("/war", "");
			} else {
				systemRootPath = systemRootPath.replace("/ROOT/", "/");
				systemRootPath = systemRootPath.replace("/war/", "/");
			}

			if (systemRootPath.endsWith("/")) systemRootPath = systemRootPath.substring(0, systemRootPath.length() - 1);
			
//			systemRootPath += "/..";
		}
		
		return systemRootPath;
	}
	
	
	/**
	 * 
	 * <B>方法描述：</B>（取临时文件存放的目录（以当前日期区分）） <br/>
	 *
	 * <B>作者：	 </B> 黄杰帆 <br/>
	 * <B>创建日期：</B> 2015年2月6日 上午9:31:37 
	 * @return
	 */
	public static String getExposeTemporaryPath() {
		
		String exposeTemporaryPath = FilePaths.getExposeTemporaryPath();
		exposeTemporaryPath = exposeTemporaryPath.replace("\\", "/");
		if (!"1".equals(hasRoot)) {
			
			if (exposeTemporaryPath.endsWith("/war") || exposeTemporaryPath.endsWith("/ROOT")) {
				exposeTemporaryPath = exposeTemporaryPath.replace("/ROOT", "");
				exposeTemporaryPath = exposeTemporaryPath.replace("/war", "");
			} else {
				exposeTemporaryPath = exposeTemporaryPath.replace("/ROOT/", "/");
				exposeTemporaryPath = exposeTemporaryPath.replace("/war/", "/");
			}
			
			if (exposeTemporaryPath.endsWith("/")) exposeTemporaryPath = exposeTemporaryPath.substring(0, exposeTemporaryPath.length() - 1);
		}
		
		File temporaryFolderFile = new File(exposeTemporaryPath);

		if (!temporaryFolderFile.exists()) temporaryFolderFile.mkdirs();

		
		return exposeTemporaryPath;
	}
	
}
